const baseRequest = function(opts, data){
	let baseDefaultOpts = {
		url: this.baseUrl+opts.url,
		// 请求接口地址
		data: data,
		// 传入请求参数
		method: opts.method,
		// 配置请求类型
		header: opts.method == 'get' ? {'X-Requested-With': 'XMLHttpRequest',"Accept": "application/json","Content-Type": "application/json; charset=UTF-8"} : {'X-Requested-With': 'XMLHttpRequest','Content-Type': 'application/json; charset=UTF-8'},
		// 配置请求头
		dataType: 'json',
		}
		uni.showLoading({
			mask: true,
		    title: '加载中...'
		});
		let promise = new Promise(function(resolve, reject) {
			uni.request(baseDefaultOpts).then(
				(res) => {
					let rData = JSON.stringify(res[1].data);
					rData = JSON.parse(rData);
					if(rData.code == '200' || rData.code == 200){
						
						// 后端返回的状态码200为成功状态,成功则返回请求结果,在app调试时可以通过console.log(JSON.stringify(res[1].data))来查看返回值（以项目实际情况为准）
						resolve(rData)
					}else if(rData.code == '500' || rData.code == 500){//做为非正常情况的提示路径
						// 后端返回状态码为105则为未登录状态（以项目实际情况为准）
						uni.showToast({
							icon: 'none',
							title: rData.msg,
							duration: 2000
						});
						// 其他逻辑处理
						return false
					} else if (rData.code == '501' || rData.code == 501) { //sessionkey不存在情况的路径
						uni.showToast({
							icon: 'none',
							title: rData.msg,
							duration: 2000
						});
						setTimeout(function() {
							wx.switchTab({
								url: '/pages/index/index'
							})
						}, 2000)
					}
				}
			).catch(
				(response) => {
					reject(response)
				}
			)
		})
		// setTimeout(function(){
		// 	uni.hideLoading();
		// },50)
		return promise	
}

// 将对象导出外部引入使用
export default baseRequest
	
